{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:02:58.851927400Z",
     "start_time": "2023-06-12T07:02:58.510470800Z"
    }
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "from sklearn.metrics import accuracy_score\n",
    "import func\n",
    "import seaborn as sns\n",
    "import warnings\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "warnings.filterwarnings(\"ignore\")\n",
    "\n",
    "rc = {'font.sans-serif': 'SimHei',\n",
    "      'axes.unicode_minus': False}\n",
    "sns.set_theme(style=\"white\", context=\"talk\", font_scale=0.75, rc=rc)\n",
    "\n",
    "FILE_PATH = \"../dataset/satisfaction_v2.csv\"\n",
    "PICTURE_PATH = \"../picture/\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "outputs": [],
   "source": [
    "#数据集读取与分离\n",
    "data = func.get_pre_processed_data_set(FILE_PATH)\n",
    "data_x, data_y = func.x_y_split(data, \"satisfaction_v2\")\n",
    "train_data, test_data, dev_data = func.split_data(data)\n",
    "train_x, train_y = func.x_y_split(train_data, \"satisfaction_v2\")\n",
    "test_x, test_y = func.x_y_split(test_data, \"satisfaction_v2\")\n",
    "dev_x, dev_y = func.x_y_split(dev_data, \"satisfaction_v2\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:02:59.321525100Z",
     "start_time": "2023-06-12T07:02:58.852925200Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "outputs": [],
   "source": [
    "#P-R曲线\n",
    "def make_P_R(y_score, test_y, title=\"P-R\", filename=\"P-R.png\", dpi=100):\n",
    "    score = pd.concat([y_score, test_y], axis=1)\n",
    "    score.columns = ['acc', 'real']\n",
    "    score = score.sort_values('acc', ascending=False)\n",
    "    P_R = []\n",
    "    for i in range(len(score)):\n",
    "        TP = score.iloc[:i, 1].sum()\n",
    "        FP = i - TP\n",
    "        FN = score.iloc[i:, 1].sum()\n",
    "        TN = (len(score) - i) - FN\n",
    "        P = TP / (TP + FP)\n",
    "        R = TP / (TP + FN)\n",
    "        P_R.append([P, R])\n",
    "    P_R_df = pd.DataFrame(P_R)\n",
    "    plt.plot(P_R_df.iloc[:, 0], P_R_df.iloc[:, 1])\n",
    "    plt.title(title)\n",
    "    plt.savefig(filename, dpi=dpi, bbox_inches='tight')"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:02:59.337480100Z",
     "start_time": "2023-06-12T07:02:59.321525100Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "outputs": [],
   "source": [
    "#ROC曲线\n",
    "def make_ROC(y_score, test_y, title=\"ROC\", filename=\"ROC.png\", dpi=100):\n",
    "    score = pd.concat([y_score, test_y], axis=1)\n",
    "    score.columns = ['acc', 'real']\n",
    "    score = score.sort_values('acc', ascending=True)\n",
    "    ROC = []\n",
    "    for i in range(len(score)):\n",
    "        TP = score.iloc[:i, 1].sum()\n",
    "        FP = i - TP\n",
    "        FN = score.iloc[i:, 1].sum()\n",
    "        TN = (len(score) - i) - FN\n",
    "        TPR = TP / (TP + FN)\n",
    "        FPR = FP / (TN + FP)\n",
    "        ROC.append([TPR, FPR])\n",
    "    ROC_df = pd.DataFrame(ROC)\n",
    "    plt.plot(ROC_df.iloc[:, 0], ROC_df.iloc[:, 1])\n",
    "    plt.title(title)\n",
    "    plt.savefig(filename, dpi=dpi, bbox_inches='tight')"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:02:59.352233500Z",
     "start_time": "2023-06-12T07:02:59.340472100Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "逻辑回归测试集准确率：0.7954282183952429\n"
     ]
    }
   ],
   "source": [
    "#逻辑回归\n",
    "from sklearn.linear_model import LogisticRegression\n",
    "\n",
    "\n",
    "def logistic_regression(train_x, train_y, test_x, test_y):\n",
    "    model = LogisticRegression()\n",
    "    model.fit(train_x, train_y)\n",
    "    y_score = pd.DataFrame(model.predict_proba(test_x)).iloc[:, 1]\n",
    "    y_score.index = test_y.index\n",
    "    return y_score, accuracy_score(model.predict(test_x), test_y)\n",
    "\n",
    "\n",
    "y_score, accuracy = logistic_regression(train_x, train_y, test_x, test_y)  #y_score为类别为1的置信度\n",
    "print(f\"逻辑回归测试集准确率：{accuracy}\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:00.007486200Z",
     "start_time": "2023-06-12T07:02:59.354228900Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_P_R(y_score, test_y, title=\"PR-逻辑回归\", filename=PICTURE_PATH + \"PR-逻辑回归.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:04.433983100Z",
     "start_time": "2023-06-12T07:03:00.008483500Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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rk6dOnm0byCQEV4AP/bGG2/ojTfecLe7dOmi6dOnu0NAXYu+hYSEuM9inJxEeqbblCVp2LBhuuSSS874el1nK06GAJfLpZdeekl5eXm6/fbbawWX//znP3rppZc0ZswY07yU2NhYXXPNNYqMjNSmTZtkGIa+++47VVRUKDU1VTabTevWrVNmZmadNTXX2ZADBw4oLS1N0okzOr169VJoaKiCgoJMl5x2797dLPUA/oLwAvix4cOHa8iQIfrvf/+rv/71r3rmmWfUvXt3FRYWSqr7bp+amhp34DgZGE6/vbi8vFx79+5VcnKyOnXq1OCzBq+88ory8vI0YsQI3X///br33ns1efJkXXTRRTp+/LjeeecdZWZm1pq/0r9/f/Xv39/dXrx4sUaNGuXuW716tfr06aO33nrLNO709WDqcvKOpEOHDrkvn0knJgyf6W6lk1wul/uuqOrqan399de66qqrJEkdO3bUE088Uee4L774gruNAA8QXgA/1qlTJ/Xr1089evTQ3//+d7311lvq06ePYmNjFRISouLi4lpjSkpKFB8fL0mKi4tz953q888/1913361XX31V1157bYPrGzNmjGJiYnTXXXfp22+/VWFhoUaNGqWpU6dq7ty5Kioq0uuvv24663Iu+fn5kk4Er9PP+pxrgq0kVVZWSpIef/zxWq8lJyefdazdbneftfrss89UU1OjSy+9tF51A6g/wgsQANq0aaObb75Zb7/9tnbt2qX09HR17tzZdGZBOvHle/DgQfdE1ZN3/Wzfvl0XX3yx+32HDh2SpFqL2XkqOjraPRema9eumjdvnu655x49/PDDCg4O1gsvvKCePXuedR+HDh2Sy+XS22+/rd/85jfq3r27zj///LNeNjqbxMRE95wfT2VnZ7vPZr3zzjvq2LGj+vTp06B9ATgzwgsQIH7+85/r3Xff1Zw5czRlyhQNHDhQb7zxhlatWuW+3LJ48WLV1NToiiuukHTi8kx0dLTmzZunkSNHuieaLlmyRK1atarzluaGqKys1NatW/Xf//5Xu3btUnx8vF588UX17du3zvcvXLhQq1at0qZNm9yTil0ul375y1+qf//+mjNnji655BLNnj3bNO7GG2+UdOISUEhIiPvnOXVhuca4//77JUlfffWVli9frgceeEA2m027d+9WWVmZwsLC6pwQfPJsD4D6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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_ROC(y_score, test_y, title=\"ROC-逻辑回归\", filename=PICTURE_PATH + \"ROC-逻辑回归.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:08.165540700Z",
     "start_time": "2023-06-12T07:03:04.433983100Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [],
   "metadata": {
    "collapsed": false
   }
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "随机森林测试集准确率：0.9642443431925245\n"
     ]
    }
   ],
   "source": [
    "#随机森林\n",
    "from sklearn.ensemble import RandomForestClassifier\n",
    "\n",
    "def randomforest_classifier(train_x, train_y, test_x, test_y):\n",
    "    model = RandomForestClassifier(n_estimators=200)\n",
    "    model.fit(train_x, train_y)\n",
    "    y_score = pd.DataFrame(model.predict_proba(test_x)).iloc[:, 1]\n",
    "    y_score.index = test_y.index\n",
    "    return y_score, accuracy_score(model.predict(test_x), test_y)\n",
    "\n",
    "\n",
    "y_score, accuracy = randomforest_classifier(train_x, train_y, test_x, test_y)\n",
    "print(f\"随机森林测试集准确率：{accuracy}\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:30.895191600Z",
     "start_time": "2023-06-12T07:03:08.170034200Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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ZswYt0m9F5oxY4Z+/vOfu97PmjVL6enpeuWVV3T8+HG99tprkqQNGzYoKytLSUlJslqtrvBRc7npwpGUL7/80nVH0eeff679+/dr6NChkqpDR313AdXn1ltv1WuvvaYbbrhBGzdu1H//93/rueeek1R9KacmNK1evVpvvvmmXnnlFQ0YMOCi+/vggw9c9d1xxx1atmyZrr76aknSqlWrXBOHrVarXn31Vf3ud7/zqE4AF0d4AVqRiooKFRUVqbKyUl9//bWefvpphYeH66677nJtk5+f7/bDOiwsTHPmzNFtt90mScrMzHRNQq1PzQ/uGtHR0ZoyZYr++Mc/6t1331W/fv00c+ZMt5GHX//61/r1r399ydrffPNNWSwWGYahnJwcHThwQNdff72io6Nlt9s9GsmoqKjQvn37FBERoW+++UZ79uzR5s2btW/fPtntdt13333avXu39u/fr4MHD2rPnj06dOiQDMOQw+FQRUWFkpKSXPv7+OOPdfjwYQUFBalz587av3+/nn32WT333HNyOp165ZVXNGTIEK1Zs0a33HKL3nrrLU2cOFGJiYkN1grg4ggvQCuyZs0arVmzxvU+OjpaL774ojp16uRqi4qK0h/+8AeVlJTooYceUlpamu6//37X5zfeeKPXx01LS9MzzzyjrVu3ui4h1b4b6ZlnnnFNEl61apVmzZrl1v/06dNavXq1+vfvr88++0yzZ8/W9OnTNX/+fD377LMqKSlxradyKUVFRbr77rtls9lkGIbKyspksVg0evRolZeXa8uWLRo7dqwCAwNlt9tdtYeGhsrpdMrhcLjmBzmdTi1cuFADBw7U9u3b1alTJ02cOFHvvvuuiouLtXLlSn311Vd64okntGbNGg0ePFjHjx/XnDlztGLFCtdlJwDeY8Iu0IoMGDBAy5Yt06uvvqq3335b69ev18033+y2TUhIiAYOHKihQ4cqLS1N7777rgoLCy/ruGVlZZJ00SXy58yZ45qoe2FwkaRly5apoqLCNULUqVMnzZ49Wz/72c90/PhxSap3/ZULxcTEaOfOndq6dasmT54sqXpuy2effabPP/9cYWFh2rFjh+tuJqk6ZK1evVpffPGF28TmV155Rbt373a7E2ry5Mn64IMPVFlZqUWLFunWW291jbJYrVY9+uij2rt3r37xi19ccvQKwKURXoBWJDIyUgMHDtSAAQOUlJTU4AJqkydPVkVFhV5//fVGH3PJkiUaNWqUbDab6+6m2gzDUEZGhvLy8pSXl6ff/va3bp/n5+frT3/6k+644w5FRka62idMmKDk5GT95z//keQ+b6chJSUlWr58uSvw/O53v9OUKVNUWloqp9Opv//97+ratau6dOmiHj166I9//GOdfezevVu9evXSkCFDXG0dO3ZUSEiIZs+erTNnzuihhx5y63PTTTdpypQp2rBhg+655546K/kC8AzhBcBFJSUlaeDAgVq+fLlKS0sbtY8hQ4bouuuu06uvvlpnld+Kigo5nU7XAnO5ublasmSJAgMDXRN2T548qcDAQNfquRfasmWLrrrqKkVFRXlcU1ZWlkpKSvRf//VfkqQf/ehH2r17t1566SV98MEHOnLkiEaPHi2LxaJf/OIX+utf/+p2p5Mk/epXv9LcuXPrrKz71FNP6d///rfGjBlT77o4M2fO1J133qljx465JgcD8A7hBcAlTZ48WadPn9bf/vY3r/rVPCixV69eWr58ufr16ydJrtusT58+LafTqdtvv11XXXWVpOrLOlFRUZo7d64rvPTt21fvvfee4uPj6xzDMAytXLmyzqWv2o4dO+b20MaPP/5Yr7zyiqZPn+6a69OzZ0+99tpruvfee5WRkaHRo0erS5cukqShQ4dq6NChmjFjhrZt2+baT+fOneu9C+l73/ue+vXrp1/96lf11mOxWPTMM89o2bJlrmMA8A7hBcAl3XLLLUpKStKrr756yfVdLuRwOOq0nTlzRk899ZQk6aGHHtKePXuUlZWlm266SZIUHx+vt956q87Tl2ueNH3h8VeuXKkDBw5ozJgxbu0Wi8W1bVZWluvzo0ePaubMmerfv7/uu+8+GYYhwzAkVU9efvDBB+VwODRz5kw5nU7XZ08++aSuuuoqTZw4UZ999lm937XmeKmpqfrrX/+qtm3bum1Tsy+p+tlMvXr1uujvHYBL424joJXYs2dPg9tc+CDEGm+//bbXx7tw4Tun06lZs2Zp3759GjZsmL766iuNGzdOXbp00c0336xrr73WdSdScXGxdu3apccee8ztrpyagOBwOLR7925lZGQoNTVV/fv3dzuWzWbTl19+qbffflubN29WbGyspOrJuc8995wSExMVEBDguoNIknJzc3XkyBH9/ve/V2RkpOvJ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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_P_R(y_score, test_y, title=\"PR-随机森林\", filename=PICTURE_PATH + \"PR-随机森林.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:34.133771600Z",
     "start_time": "2023-06-12T07:03:30.895191600Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi8AAAG9CAYAAADdkpaRAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA4j0lEQVR4nO3deXxU9b3/8fdkm0DCFgKJjSRglARUjNgal/wKKGLQCyWI4EK51oVFhVIRhUpt5WpQA6JIowaUuvS6kFLQYtNatmopUcIii0alICAaliRAlsl6fn/kZsyQIHMmy8lhXs/Hgz7OfGe+53xyCpm33/P9nuMwDMMQAACATQRYXQAAAIAZhBcAAGArhBcAAGArhBcAAGArhBcAAGArhBcAAGArhBcAAGArhBcAAGArhBcAAGArhBcA7dJzzz2n3NxcS2swDEPV1dWm+x05ckR79uzR6W5gvnv3bu3atau55QF+K8jqAgD4h507d2r16tUebd27d9fdd9/d6LMFBQV68cUXVVBQoOTk5B/c77BhwzRs2DA9+OCD7rbi4mKVlJQ0+mzPnj0VEhLidc1/+ctf9OCDD2rbtm3q0KGD1/0WLVqk7OxsffbZZ02+/z//8z+qqKjQihUrvN4ngO8RXgC0iQMHDuiVV17R1KlT5XA4tHjxYv385z/Xpk2bVFJSoqFDh2rPnj2qra3VihUrFBoaqsmTJ+vEiROqqalRRUWFunXrJqfT6bHfb7/9ttHoyIsvvqhly5Y1qmHVqlVKTExs1L5//36VlZUpODjYo724uFiSdOjQIY92wzBUUVGhyMhIRUVFNdpfaGhoozob6tatm44ePXra9wH8MMILcBbKzc3VhAkT3K+Dg4MVExOj6667ThMnTlTnzp0l1X1pz5s3T5s2bVJAQIBSUlL061//utEX8qZNm/TMM8/o888/V2RkpCZMmKA77rjDVE31wWDy5Mnau3evFi1apGHDhum1115Tfn6+hg4dqpkzZ3pcTrnuuus89vHaa681GolxOp0KCvL8VRYSEqKoqCh98MEHkqS//vWvevjhh0876vLCCy9o9erVCgwMVEBA3dX0kpISORwOSdLIkSMlyT36Ultbq8rKSk2bNk0TJ05stL+goCB336acWi8Ac/gXBJzFrr/+el177bUqLS3Vli1btHTpUm3atEnvvPOOiouLddttt6msrEx33323Kisr9corr+jzzz/XqlWrFBoaKqkuuNx1113q37+/Zs+erV27dmnevHkqLy/XlClTvK6lPhRI0r/+9S91795dAwcOVFFRkf72t78pPz9fS5cu1ZtvvqmsrCz96U9/0jnnnCOpbqSjsrJS4eHhkqT//Oc/crlccjqdqq2t1fHjx/XVV1+prKxMffv2VUBAgAICAtyjH/XB6dSRlXrz5s3TvHnzPF6/9dZb+sUvfqEXXnhBs2bNUkZGhl555RUNGDCgyX24XC59+eWXCg0NVXFxsQzD0BdffKGKigrFxMToxIkTqqioUFBQkEpLS1VRUaE9e/ZIkiorK3X8+HFdeumlPzhiA6AO4QU4iyUmJupnP/uZJOm2225Tjx499Morr2jbtm1as2aNjhw5omXLlumqq66SJMXGxurXv/61srOzNX78eBmGoccee0zR0dF67bXX3CMPJSUlysrK0oQJExQWFuZVLQ1HItauXavBgwcrICBAycnJCgkJ0bZt25SSkqKlS5dq6tSpOv/880+7r+eff17vv/+++/U777yjd955R5L0/vvvu8PLD9XQlJKSEj322GPKycnRwoULVVtb6z53W7Zs0R133KFf/epXGjduXKNRnG+++UZjxozxaBsxYoSkujC0fv16/e1vf/N4/4YbbvB4vWHDBkVHR/9gjQBYbQT4lSuvvFJS3RyOdevW6ZxzznEHF6nuyzY4OFjr16+XJO3YsUP/+c9/NGbMGI8Jq0OGDFFZWZl27Nhhuobi4mLl5eXpmmuukSR17txZH330ka6//npNnDhRZWVlysjIUEJCgsefP/zhD+59zJkzR7m5uXrxxRclSffcc4927dqlvLw89e7dW5KaDC+nc+zYMS1ZskTDhg3TJ598opdffllDhw51hxdJWrBgge644w499dRTuvLKKzV9+nQtXrxYlZWVkqTevXtr8+bN2rFjh/r06aOOHTtq586dysvL03/913/pySef1I4dO/Tmm2+697lq1Srl5+dr9+7dysvLU8+ePU2fT8AfMfIC+JHDhw9Lkrp06aKvv/5aV1xxhcf7ISEhiomJcV/O2LZtmyQ1ulSSkJCgG264QaGhoSotLVVZWdlpjxkYGKiIiAj36/z8fFVXV6tbt24qKirSRx99JKfTqe7duysuLk6dOnVScHCwO5hI0hVXXOG+jCXVrVKSpH//+9/utqCgIPdlpZqaGgUGBnp1TkpKSjR+/Hh98803uvXWWzV16lT3fuonAldVVSk0NFTTpk3T2LFjtXz5cq1bt06RkZHuEZjAwEB16tRJ+/fv1969e9WxY0cFBwe759HUf+7dd991H3v16tVKTExUYGCg+5gAzoyRF+As5nK5VFhYqKNHj2rDhg1atGiRoqKidN5556m6ulpdunRp1Kdr164qKiqSVHcpRFKjEYHExEQtXLhQSUlJeuWVV5SSknLaP6deSklOTtYNN9yg3/3ud/rmm2/04IMPaurUqcrNzVVmZqbi4+PlcDgUFBTk/iOpyTCyYcMGSXUB5Pe//727vbq62usl0eHh4Vq8eLH+8Y9/6IEHHtCMGTO0fft2SdI555yjMWPGyDAMuVwujR07VgcPHtTUqVO1YsUKzZkzp9H+6peDV1dX66677tKSJUvc75WUlOi9995zB5p33nlHpaWlXtUJ4HuMvABnsZdeekkvvfSS+/X555+v+fPnuy+pNDWBNSgoSBUVFZLk/mJtOOpxqlGjRumyyy477ftNTUCdNWuWrr32Wn3xxRfasGGDxo0b53GM3Nzc006MrffJJ59o3759cjgc2r17t7Zv365u3brptttuU0VFhdcTX/ft2yfDMFRaWqqSkhKtX79ew4YNk9PpVO/evTVlyhR98803cjgc2r59uw4cOKAePXqourpaVVVVioqKUrdu3STVjdC8/fbbcjqdqq6uVqdOnfTSSy9pzJgx6t69u958800ZhqErrrhCxcXF+vbbb7V48WI9/PDDXtUKoA7hBTiLjR49WiNGjNA//vEP/fGPf9Rjjz2mfv366dixY5LqvmxPVVVV5f7irw85p95HpbS0VPv371dMTIx69eqlXr16maorKipKl156qXJycjR69GiPJcpS3dychnNcLr744kb7ePPNN5WQkKBDhw7p8ssv17nnnquMjAxde+21OnbsmDtQnMljjz2mLVu2KDAw0H35a+7cuaqurnavrsrJyVF5ebmkuuDVsWNHSXWrhNLT092Tol9//XUdPnxYqampysnJ0f33368PPvhAubm5+slPfqIXX3xRN910kwoKClRSUqJ77rlH8+fP1+DBg894Mz4A3+OyEXAW69Wrl6666ipNmzZNHTt21CuvvCKpbs5LUFCQ+/JQQ8XFxe45KvUBoP5mbfW2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orXaXUCA72MZVnwP+n14cTqd7mGuhhwOh/v/kDP1l9RoH9729xfNPc+nWr58uT788ENlZWUpKMjv/xq7tcR5Xrp0qfbv36/33nuvpcs7azT3PNfU1Gj58uWKjIzUihUrFBUVJcMw9Mgjj2jJkiUaO3asYmNjW6N0W2mJv8/PPfecDh06pBkzZig2NlYbNmzQI488os6dO2vw4MEtXLF/suJ70O8vG0VGRqqsrEwlJSUe7cXFxY3S/un6S98Pb9YrKiryqr+/aO55bujLL79Uenq6xo8fr0GDBrVkmbbX3PP8+eef6/nnn1d6eroiIiJaq0zba+55PnbsmE6cOKG0tDRFRUVJqvtFf+utt0qSdu7c2fJF21Bzz3NhYaFeffVVzZ07VxMnTlRqaqrmzZunkSNH6umnn26tsv2OFd+Dfh9e+vfvL6lumVc9wzC0a9cu9y+VHxIeHq7Y2FiP/lLdLx9v+vuL5p7neidOnND999+vvn376uGHH27xOu2uuef5gw8+UGVlpSZOnKiEhAQlJCRowoQJkqSEhATNmjWrdQq3meae544dO0qS4uLiPNrr/ws2JCSkpUq1teae5/3796umpqbRfYr69eun/fv3t2yxfsyK70G/Dy/R0dFKSkpSVlaWe9XKqlWrVFhYqJSUFK/2kZqaqhUrVrhT59dff621a9fq6quvbrW67aYlzrPL5dKkSZNUWlqqRYsW8Qu+Cc09z7fccotWrlzp8efxxx+XJK1cuVLTpk1r1frtornnOTw8XPHx8dq9e7dH+6ZNmxQQEKCLL764Veq2m+ae527dukmStm/f7tG+bt06RUdHt3zBfqytvwcdhmEYrbJnG9m2bZvGjx+vvn37qk+fPsrJydHQoUP13HPPSZJ27NihqKgo9ezZs8n+x48fV1pamqqqqpSSkqINGzaoY8eOWrVqlcLCwtryR2nXmnueH330Ub399tt69NFHNWDAAHd7WFiYzjvvvDb5Geyguef5VLm5uZowYYLy8/Nbs2zbae55fu+99zR79mxNnjxZl19+uXbv3q3nnntOw4cPV3p6elv+KO1ac86zYRgaOXKkDh48qBtuuEHdunXT5s2btXXrVj366KM+r645m9X/e1+zZo3OPfdcd3u7+x5slbvH2NBnn31mTJkyxUhLSzOef/55o6Kiwv1e3759jd///vc/2P/YsWPGb37zG+NnP/uZMWvWLOPw4cOtXbItNec8Dxw40Ojbt2+jP+PHj2+L0m2luX+fG9q0aRM3qTuN5p7nnJwc4+abbzaSkpKMq666ypg7d67hcrlau2zbac55PnLkiDF79mwjOTnZ6N+/vzFo0CDj+eefN2pra9uidNup//d+6k3q2tv3ICMvAADAVvx+zgsAALAXwgsAALAVwgsAALAVwgsAALAVwgsAALAVwgsAALAVwgsAALAVwgsAALAVwgsAALAVwgsAALAVwgsAALCV/w83oZrjIQPuZAAAAABJRU5ErkJggg=="
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_ROC(y_score, test_y, title=\"ROC-随机森林\", filename=PICTURE_PATH + \"ROC-随机森林.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:37.380056600Z",
     "start_time": "2023-06-12T07:03:34.135783300Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "outputs": [
    {
     "data": {
      "text/plain": "(id\n 103914    0.998220\n 103915    0.042201\n 103916    0.999800\n 103917    0.999766\n 103918    0.999949\n             ...   \n 116892    0.999999\n 116893    0.999696\n 116894    0.985981\n 116895    1.000000\n 116896    0.030015\n Name: 1, Length: 12949, dtype: float32,\n 0.9643987952737663)"
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#xgboost\n",
    "from xgboost import XGBClassifier, plot_importance\n",
    "\n",
    "def xgboost_regression(train_x, train_y, test_x, test_y):\n",
    "    model_xgb = XGBClassifier()\n",
    "    model_xgb.fit(train_x, train_y)\n",
    "    y_score = pd.DataFrame(model_xgb.predict_proba(test_x)).iloc[:, 1]\n",
    "    y_score.index = test_y.index\n",
    "    return y_score, accuracy_score(model_xgb.predict(test_x), test_y)\n",
    "\n",
    "y_score, accuracy = xgboost_regression(train_x, train_y, test_x, test_y)\n",
    "y_score, accuracy"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:40.304129Z",
     "start_time": "2023-06-12T07:03:37.383048200Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi8AAAG6CAYAAADAl6YpAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAxWklEQVR4nO3de1xVdb7/8fcGdIugCCKbQkGiI2peyEzSmCGrKaxALS+VTqcxx1tWZmXxs5rGkiy00opO2EyXqcfYiSzHLKujeWmcNBwbb2VpmppJyEXlspXL+v1B7tyBykKUvuzX8/HwAeu7vt/v+uy9BN+u23ZYlmUJAADAEH5NXQAAAIAdhBcAAGAUwgsAADAK4QUAABiF8AIAAIxCeAEAAEYhvAAAAKMQXgAAgFEILwAAwCgBTV0AgKYTHx/vtdyuXTv99re/1bRp09ShQwdJ0uWXX67vv//e06dDhw7q0aOHbr/9dvXs2fOs1nvM2rVrdcstt+i1115TYmJik9QAoOkQXgAfd+GFF+qmm27S0aNH9c033+itt97S1q1b9c4776hly5aSpPDwcE2bNk1VVVXavXu33nzzTd10001asGCBevTo0cSv4NfnlVdeUceOHXXllVc2dSlAs0R4AXxcx44dNXjwYM9y3759dccdd+jDDz9UamqqJKl169ZefQYNGqS0tDS9+eabhJc6vPbaa+rXrx/hBThDuOYFgJcBAwZIkjZv3nzCPvHx8QoPD9e+ffvOVlkA4EF4AeDFz6/m10JFRcUJ+7jdbh08eFBhYWGSpMLCQuXn55/wT2lpqSTp9ttv14UXXqj8/HzPXOPHj1diYqIKCws9bbt379a4cePUp08fXXHFFfrb3/6mqVOnqlevXlq7dq2n3w8//KBbb71VPXv21FVXXaV33323Vq1bt27Vrbfeql69emnAgAHKyMhQeXm5V5/CwkKlp6fr4osv1oUXXqjJkydr7969Xn2Ki4v18MMPKzk5Wb1791Zqaqree+89z/qFCxcqPj5e8fHx+v777/XOO+94lh944IFTve0AbOC0EQAvX331lSQpJibG01ZdXe0JF/n5+Xr22WdVUVGhQYMGSZKGDRvmdVHvL02ePFl33HGHHnroIV1zzTV65plnNHPmTP3zn//UihUrlJGR4QlCkjRp0iSVlZXpnnvu0Q8//KCZM2cqNTVVjz76qGJiYvTdd99Jkv785z/r0ksv1f3336/33ntP999/v5xOp6euL7/8UqNGjVJ4eLimTp2qffv26Y033tBXX32ll19+Wf7+/iopKdGoUaO0f/9+/eEPf1CrVq308ssv68Ybb9Tbb78tl8slSUpPT9fq1as1duxYRUVFaeXKlbr33nsVFRWlCy+8UBdffLGefPJJSdLjjz+uuLg4jRgxQpIUHR3dKPsGQA3CC+Djjh49qsLCQlVUVGj79u2aNWuWgoODdd1113n67N27V/379/csBwUFadq0abr88sslSZmZmTpy5MgJt9GpUydJUmRkpO6++25lZGTo5ptv1qxZs9SvXz/dcMMNnr4HDx7UN998o4ceekijRo2SJK1Zs0bFxcWe626OhZdevXrpueeekyQNHz5cV1xxhV544QVPeJk1a5b8/f315ptvesJRbGysHnnkES1ZskRpaWl69dVX9e233+qvf/2rLr30UknSZZddpiFDhujZZ5/VY489Jkn6/PPPNXDgQE2ZMkWSlJaWppkzZ6qsrMzzGo+9zrlz56pTp05e1wkBaDyEF8DHffjhh/rwww89yy6XS88//7zat2/vaYuIiNATTzyh0tJS3XXXXUpJSdFtt93mWX/RRRfVe3ujRo3SokWLdNttt6m0tFSLFi3yWh8SEqLzzz9fn3zyiZKTk7V//37t3LlTCQkJteZKS0vzfO90OjVw4EC99dZbKisrk5+fnz7//HMNHjzY66jO8OHD9dhjj2nVqlVKS0vT6tWr1bFjR09wkaQuXbrooosu0qpVqzxtvXv31po1a/TGG2+ob9++Ov/88zVjxox6v24AjYfwAvi4/v37a9y4cXI4HAoJCVF8fLz8/f29+rRq1cpzIW9KSooWL16su+++2/MsGDv8/Px04403avr06UpOTtZ5551Xq89VV12l+fPne+7W6d27tyZPnlyrX0REhNdy+/btZVmWDh8+LEmqqqqq1ScgIEDt27f3nAYrLCys1UeqCXEbNmzwLGdkZOjJJ5/U008/rcOHD6tNmzZKS0vTtGnT1KpVK5vvAoDTQXgBfFx4eLgnmNTH2LFjtWTJEr3++uu6++67bW+vtLRUWVlZioqK0qpVq/TZZ5/pkksu8azfuHGjXnzxRa1evVrff/+9Wrdurbi4ODkcjlpzFRQUeC0XFxdLqjmt5e/vL39/f6+L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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_P_R(y_score, test_y, title=\"PR-xgboost\", filename=PICTURE_PATH + \"PR-xgboost.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:43.617607500Z",
     "start_time": "2023-06-12T07:03:40.306123600Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi8AAAG6CAYAAADAl6YpAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAxp0lEQVR4nO3de1RVdf7/8dcBFBVMJPJgFqg0gKhJWlHGZJiT2ISJmVox5lSjMt38ZhfNsm/2lanQHC/DTGBZja1MGdNf2Zelo2bOOMpg1iialWlojYiCOlyOctm/P/x64oSXsw+Xw/Y8H2ux1tmfsz97v88H47za+7P3thmGYQgAAMAi/LxdAAAAgBmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEF8BHbN26VTExMc6fPn36aOjQoZo9e7ZOnDjhXK+oqEjp6em65pprNGDAAD3++OMqLi5usL0tW7Zo9OjRuvrqqzV48GC99dZbLfhpGho8eLCmTp3q1RoAtIwAbxcAoGUNHTpUt956qyoqKvTZZ59p0aJF2rJli5YtW6Zjx47p3nvvVWVlpR566CGdOnVKb775pr788kutWrVK7dq1k3Q6uDz44IOKi4vTtGnTVFhYqN/97neqqqpSenq6lz9h67N161bl5+fr0Ucf9XYpwEWB8AL4mNjYWN15552SpHvvvVeXXXaZ3nzzTX3++edat26dSkpKtHjxYg0cOFCSFBERoWeffVa5ublKS0uTYRh68cUXFR4ernfeeUft27eXJJWXlys7O1vjxo1TUFCQ1z5fa5Sfn6+FCxcSXoAmwmkjwMfdeOONkqQffvhBGzZsUNeuXZ3BRZJSUlLUpk0bffLJJ5KkHTt26Ntvv9WoUaOcwUWSkpKSVFlZqR07drRo/QB8D+EF8HGHDx+WJHXq1EnfffedoqKiXN5v27atunXrpr1790qSPv/8c0nS1Vdf7bJeTEyMbr/9drVr104VFRUqKSk5509paakk6a9//atiYmK0ZMkS53by8vIUExOj5cuXO9tqa2s1d+5c3Xzzzbruuuv0zDPP6M0339TNN9/sMs/FMAzNnTtXCQkJuvbaa/X888+roqLCpc7KykrNmjVLAwcOVL9+/fTrX/9aX375ZYNxeffdd3XbbbepT58+SklJUV5eXoN1cnNzlZKSovj4eP385z/Xiy++6LK/M/OLFi5c6LIcExNzjt8GAHdw2gjwMQ6HQ6Wlpaqrq1NhYaHmz58vu92unj17qqamRp06dWrQJyQkRHv27JEkff/995KkLl26uKwTGxuruXPnSpIWLFjg/MI+m27dumn9+vUaMmSIfvGLX2jhwoUaPny42rVrp8zMTF1//fUaNWqUc/233npLr7/+uh566CF17dpVb7zxhvLz8/XMM88oNDTUud6aNWsUGhqq9PR0HThwQO+++66Ki4uVnZ0tSaqpqdGECRO0fft2paWlqWvXrlqyZInuuecevffee4qNjZUkzZ07V3/6059022236f7771deXp4ef/xxzZo1y1nX2rVrNX36dN1yyy0aN26ciouLlZOTo9raWs2cOVOS9OqrrzrXXbt2rXMZQOMQXgAf8/rrr+v11193Ll911VWaPXu2/PxOH4ht06ZNgz4BAQE6efKkJDmPLJyZvHs2I0aM0IABA875fmBgoPP1888/r2HDhikrK0uXXnqpDh8+rJycHNlsNuc6BQUFiouL05NPPinp9BGWl156STfccIMuvfRS53qnTp3S4sWLFRER4az7rbfe0q5duxQXF6ePPvpI//znP/XSSy9p9OjRkqQ77rhDQ4cO1SuvvKLFixfr4MGDysnJ0R133KE5c+ZIku655x7de++9euWVV3T77berQ4cOys/PlyTNmTNHwcHBkqSwsDAdOXLEWc+ZuUVFRUVau3atcxlA43DaCPAxI0eO1OLFi3XfffdJkl588UX16tVLbdu2lSRVV1c36FNdXe0MHGdCTk1Njcs6FRUV2r17t06cOKErr7xSAwcOPOdP/WBjt9v1xBNPaMmSJfrTn/6kiRMnqmfPni7bHjBggPbt26d//vOfOnDggDZs2KCOHTsqJCTEZb1rrrnGGVyk01dWSdL27dslSZs2bVKbNm00cuRI5zphYWG67bbblJ+fr5MnT+rvf/+7amtrNXbsWOc6fn5+GjNmjE6cOOE8bRYfHy9JysjI0NatW1VeXq6xY8fqkUceOc/oA2gKhBfAx5wJFo899pg6dOigN998U9LpOS8BAQEqKytr0OfYsWPO0zOdO3d2ttX32WefacSIEdqyZYvpmlJTU+Xv76/KykqNGTOmwfuDBw+WJKWlpWnIkCHasWOHXnnlFfn7+7us99NTWWFhYZLkvI9NaWmpQkNDFRAQ0KBfTU2Njh075pyP89Nt2e12SdLRo0clSbfffrumTJmigoICjRs3Ttddd51+9atfaffu3aY/PwBzCC+AjwoJCdFdd92l9evXa9++fQoICFDPnj2dE3PPcDgc+uGHH3TVVVdJknNeyE8nuf773/+W9OOXvBkLFiyQn5+fQkJCnKdq6nvsscf0X//1X1qzZo2WLVumDRs26NZbb22w3plgccaZgHXmtE7nzp1VWlqq2tpal/UOHz4sf39/derUyRnOSkpKXNY5c6O+MyHOZrNpwoQJWrNmjfLz87VgwQLt379fDz/8sAzDMD0GANxHeAF82K9//Wv5+/tr8eLFkk5f7lxcXKxPP/3Uuc6HH36o6upq3XLLLZKkm2++WUFBQVq+fLlLCMjLy1PHjh2d4cZdX3zxhd5++209/PDDeuaZZ/TBBx+47L+urk7ffPONOnTooMjISPXr1++c95HZtm2bM0RJpyfKSlLfvn0lST//+c9VXV2tFStWONc5evSo1q5dq+uuu07t2rXTTTfdJD8/P73//vsuNSxbtkwdO3Z0ni564YUX9Ktf/UrS6aNWQ4YM0R133KHvv/9ex48fd6nrzOmt8vJyU2MD4OyYsAv4sG7duik5OVkrV67U5MmTNX78eH3wwQeaPHmyHnjgAVVXV+uNN95Qjx49dNddd0mSgoKC9Oyzz2r69Ol64IEHNGzYMG3cuFF///vfNWXKFJfJuBdy6tQpPfvss7rqqqs0fvx4BQQE6C9/+YtmzJihjz76SMHBwfLz89OAAQM0d+5cFRcX6/LLL1eHDh3UtWtX9e7d2+XUkZ+fn+6//36lpaXpwIEDWrJkiRISEpyB44477tCyZcv04osv6ttvv5Xdbte7776r2tpa5yXXV155pR544AEtWrRIJ0+eVEJCgtasWaPPPvtML730kjM49e/fX0uXLtWUKVN0ww03qLS0VMuXL1dUVFSDuTg33nijAgICNH36dN188806dOiQgoKCNH78eM9/eYAvMwD4hC1bthjR0dHGH/7wB5f23bt3G9HR0ca8efMMwzCMoqIiIz093YiPjzf69+9vPP7448ahQ4cabG/NmjXGiBEjjN69exuDBw823nnnHdM1vfbaa0ZMTIxRUFDgbPvmm2+M3r17G88//7yz7YMPPjD69OljDBw40IiLizOio6ON6Oho48477zQqKioMwzCMpKQk48knnzRmzpxpDBgwwOjfv78xdepU48SJEy77LC8vN1566SXjhhtuMPr27WuMGzfOKCwsbFDbO++8YwwZMsTo3bu3cccddxirV69usM6yZcuMO++804iPjzeuv/5649FHHzWKiorO+lk//vhjY9iwYUbv3r2NG264wVi6dKnp8QJwms0wODkLoPX6xz/+ofHjx+v+++9XdHS0AgICdOrUKW3ZskWrV6/WRx99pJ/97GfeLhNACyK8AGjVqqqq9Nprr+nTTz/V4cOHderUKQUHBysmJkZ33XUX904BfBDhBQAAWApXGwEAAEshvAAAAEshvAAAAEshvAAAAEu56G5Sl5SUpNLSUgUGBuqKK67wdjkAAMANBw8e1MmTJxUaGqoNGzacd92LLryUlpbK4XDI4XA0uEU3AABo3c48HPV8LrrwEhgYKIfDoXbt2ikqKsrb5QAAADfs3btXDofDrUeMXHTh5YorrtDx48cVFRXl8vA1AADQeo0cOVKFhYVuTflgwi4AALAUwgsAALAUwgsAALAUwgsAALAUwgsAALAUwgsAALAUwgsAALAUwgsAALAUj8PLV199pf79++vgwYOm+37yySdKSUlR//79NWnSJB05csTTMgAAgI/xKLwcPHhQkyZNUkVFhem+BQUFevjhh9W9e3fNnz9fQUFBmjRpkmpraz0pBQAA+BjT4WXHjh26++67ddlll3m0w7lz56pHjx76/e9/r8TERL388ssqKSnR+vXrPdoeAADwLabDy9atW/XII4/oiSeeML2zyspKbd++XSkpKfL395cktWnTRklJSdq0aZPp7QEAAN9j+sGMDzzwgPz8/LR161bTOyspKVFtba1iY2Nd2iMiIvTJJ5+Y3h5cHT1epZKyKtXWGTp5qlbFpRX699FKde4YqJraOn2257B6XN5JkmTUGaozDBmGVGcY2vyvf6tX91AFBNharF7DaLFdeY3Rwh/yYh9Tb3w+Q/wOm1JL/zchqYV/gy2/w5YeU5vNpj5Rl2rU4J/JZmu574z6TIcXPz/PL1ByOBySpJCQEJf24OBglZWVebxdX7N7X6meXrhJMZGdtee7MnUKbqvj5afc6rtz79Fzvpe/61BTlQgAuIh9tuewoiM6q9/PPJtC0limw0tjBAYGSpLzlNEZNpvNGWxwdsfL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R17CwsJUWVmp8vJyl/Zjx441OBpzNl9++aUWLFigjIwM05N7AQAAJJPhJS4uTpJUUFDgbDMMQ4WFhbLb7Rfsv3btWp06dUoTJkxQTEyMYmJiNG7cOElSTEyMpk6daqYcAADgg0ydNgoPD1d8fLyys7OVmJiogIAArVq1SqWlpUpMTLxg/7Fjx2rIkCEubTt37tRzzz2nlStXqlOnTuaqBwAAPsdUeJGkadOmKS0tTaNHj1aPHj2Ul5en5ORk9erVS5K0Y8cO2e12denSpUHfyy67TJdddplL24kTJyTJ2R8AAOB8TN9hNz4+Xrm5uQoPD9e+ffuUnp6uzMxM5/ujRo1Sbm5ukxYJAABwhukjL9Lp+7xkZWWd9b09e/aY2lZCQoLpPgAAwHfxVGkAAGAphBcAAGAphBc3GeLhRgAAtAaEFw/YeLgRAABeQ3gBAACWQngBAACWQngBAACWQngBAACWQngBAACWQngBAACWQngBAACWQngBAACWQngBAACWQngBAACWQngBAACWQnhxk8FzGQEAaBUILx6w8VxGAAC8hvACAAAshfACAAAshfACAAAshfACAAAshfACAAAshfACAAAshfACAAAshfACAAAshfACAAAshfACAAAshfACAAAshfDiAR5tBACA9xBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBe3GQYhrdLAAAAIrx4xsajGQEA8BbCCwAAsBTCCwAAsBTCCwAAsBTCCwAAsBTCCwAAsBTCCwAAsBTCCwAAsBTCCwAAsBTCCwAAsBTCCwAAsBTCi5t4shEAAK0D4cUDPNoIAADv8Si85OTkaNCgQUpISFBGRoaqq6vd7ltXV6f58+crMTFRvXv31uDBg7V69WpPygAAAD7IdHjJzs7WnDlzlJqaqszMTOXn52v27Nlu98/KylJ2draGDRumWbNmqVu3bpoyZYo+//xzs6UAAAAfFGBm5YqKCmVlZWnMmDGaPHmyJKlbt24aPny4Jk6cqNDQ0PP2P3HihN544w3NnDlTI0eOlCQlJydr4MCB+t///V/Fx8d79CEAAIDvMHXkZdu2baqqqtKIESOcbVFRUYqMjNTmzZsv2L9du3Z65513lJqa6tLWoUMH1dTUmCkFAAD4KFNHXoqLiyVJsbGxLu0RERHav3//Bfu3bdtWffv2dWnbtWuXSkpKNGDAADOlAAAAH2XqyIvD4VBgYKDat2/v0h4UFKSysjKPCnjttdcUGRmp2267zaP+AADAt5g68hIYGCh/f/8G7TabTQ6Hw/TOly9frk2bNik7O1sBAaZKAQAAPsrUkZewsDBVVlaqvLzcpf3YsWMNjsZcyNdff62MjAylpaVp0KBBpvoCAADfZSq8xMXFSZIKCgqcbYZhqLCwUHa73e3tnDhxQo888oiio6P1zDPPmCkBAAD4OFPhJTw8XPHx8crOznZeHbRq1SqVlpYqMTHRrW04HA5NnDhRFRUVmj9/vtq2bWu+agAA4LNMTzSZNm2a0tLSNHr0aPXo0UN5eXlKTk5Wr169JEk7duyQ3W5Xly5dzto/IyNDn332mWbMmKHDhw/r8OHDkk5P+u3Zs2cjPkoz4+FGAAC0CqbDS3x8vHJzczV//nzt27dP6enpmjBhgvP9UaNG6fHHH9dvf/vbs/Y/8yiAmTNnurRff/31+vOf/2y2HK/g0UYAAHiPR5f4xMbGKisr66zv7dmz57x9t23b5skuAQAAJPFUaQAAYDGEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFzcZPJgRAIBWgfDiCZ7MCACA1xBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBeAACApRBe3GSIhxsBANAaEF48YOPhRgAAeA3hBQAAWArhBQAAWArhBQAAWArhBQAAWArhBQAAWArhBQAAWArhBQAAWArhBQAAWArhBQAAWArhBQAAWArhBQAAWArhxV08lxEAgFaB8OIBG89lBADAawgvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvbuLRRgAAtA6EFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCmEFwAAYCkehZecnBwNGjRICQkJysjIUHV1tan+n3zyiVJSUtS/f39NmjRJR44c8aQMAADgg0yHl+zsbM2ZM0epqanKzMxUfn6+Zs+e7Xb/goICPfzww+revbvmz5+voKAgTZo0SbW1tWZLAQAAPijAzMoVFRXKysrSmDFjNHnyZElSt27dNHz4cE2cOFGhoaEX3MbcuXPVo0cP/f73v5e/v78SEhI0ZMgQrV+/Xr/4xS88+hAAAMB3mDrysm3bNlVVVWnEiBHOtqioKEVGRmrz5s0X7F9ZWant27crJSVF/v7+kqQ2bdooKSlJmzZtMlc5AADwSabCS3FxsSQpNjbWpT0iIkL79++/YP+SkhLV1tZ63B8AAMBUeHE4HAoMDFT79u1d2oOCglRWVuZWf0kKCQlxaQ8ODnarvzfZ6r+22c65HgAAaF6mwktgYKDzdE99NpvNGUwu1F9Sg22429+b4npeKkmy2aRe3S88twcAADQPUxN2w8LCVFlZqfLycgUHBzvbjx07pu7du7vVXzp9+qlPnz7O9rKysgZHc1qb2wd21xWXBSuofRtddWWIt8sBAMBnmTryEhcXJ+n05c5nGIahwsJC2e32C/YPDg5WRESES39J2rlzp1v9vclms6lf9GUEFwAAvMxUeAkPD1d8fLyys7NVU1MjSVq1apVKS0uVmJjo1jaSk5O1YsUK5+Tf7777TuvXr9dNN91ksnQAAOCLTJ02kqRp06YpLS1No0ePVo8ePZSXl6fk5GT16tVLkrRjxw7Z7XZ16dLlrP0feughrV69WqNGjVJiYqI2btyo8PBw3X333Y37JAAAwCeYvsNufHy8cnNzFR4ern379ik9PV2ZmZnO90eNGqXc3Nxz9u/UqZNyc3OVlJSk3bt3a9CgQXrvvfcUFBTk2ScAAAA+xfSRF+n0fV6ysrLO+t6ePXsu2D80NFQzZ870ZNcAAMDH8VRpAABgKYQXAABgKYQXAABgKYQXAABgKYQXAABgKYQXAABgKYQXAABgKYQXAABgKYQXAABgKR7dYbc1O3jwoCRp7969GjlypJerAQAA7ti7d6+kH7/Hz+eiCy8nT56UJDkcDhUWFnq5GgAAYMaZ7/HzuejCS2hoqEpLSxUYGKgrrrjC2+UAAAA3HDx4UCdPnlRoaOgF17UZhmG0QE0AAABNggm7AADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggvAADAUggv/ycnJ0eDBg1SQkKCMjIyVF1dbar/J598opSUFPXv31+TJk3SkSNHmqlSa2vMONfV1Wn+/PlKTExU7969NXjwYK1evboZq7Wuxv57ri8vL08xMTFNWN3Fo6nGeenSperTp4/27t3bxBVeHBo7zgsXLlRSUpL69eunlJQU/m6cx1dffaX+/fvr4MGDpvu25Pcg4UVSdna25syZo9TUVGVmZio/P1+zZ892u39BQYEefvhhde/eXfPnz1dQUJAmTZqk2traZqzaeho7zllZWcrOztawYcM0a9YsdevWTVOmTNHnn3/efEVbUGPHub6SkhK98MILTVzhxaGpxrm4uFiZmZl68MEHFRUV1QyVWltjxzk3N1dLly7VU089pezsbF177bV64okn9Le//a0Zq7amgwcPatKkSaqoqDDdt8W/Bw0fV15ebvTr18+YMWOGs+2bb74x4uLijKNHj7q1jXvvvdf45S9/adTU1BiGYRinTp0ybr75ZmPNmjXNUrMVNXacjx8/bsTHxxt/+ctfnG1VVVXGNddcY2RkZDRLzVbUFP+e65swYYIxYMAAIzo6uinLtLymHOdJkyYZSUlJRlVVVVOXaXlNMc733Xef8frrr7u0DRs2zHj++eebtFar+9e//mXccMMNxujRo43o6GjjwIEDpvq39Pegzx952bZtm6qqqjRixAhnW1RUlCIjI7V58+YL9q+srNT27duVkpIif39/SVKbNm2UlJSkTZs2NVfZltPYcW7Xrp3eeecdpaamurR16NBBNTU1zVGyJTV2nOt7//33tXXrVj311FNNXKX1NdU4f/zxx1q/fr2ee+45tWvXrhkqtbamGOejR482aKupqVFgYGBTlXlR2Lp1qx555BE98cQTpvt643vQ58NLcXGxJCk2NtalPSIiQvv3779g/5KSEtXW1nrc31c0dpzbtm2rvn37ymazOdt27dqlkpISDRgwoElrtbLGjvMZBw4c0Msvv6ypU6eqe/fuTVjhxaEpxvk///mPZs2apZCQEK1bt07Tpk3TunXrmrpUS2uKcb7xxhu1ZMkS7dy5U+Xl5Vq0aJEOHDjgEoggPfDAA7rvvvs86uuN78GAZtmqhTgcDgUGBqp9+/Yu7UFBQSorK3OrvySFhIS4tAcHB7vV31c0dpzP5rXXXlNkZKRuu+22pijxotAU41xXV6enn35aCQkJGjt2rLZu3docpVpaU4zzH//4Rx05ckTBwcE6dOiQioqKtGLFCv3mN7/Rk08+2RxlW05TjPPTTz+tbdu26a677nK2ZWZmqnfv3k1aq9X5+Xl+LMMb34M+H14CAwOdh7nqs9lszl/IhfpLarANd/v7isaO808tX75cmzZtUnZ2tgICfP6fsVNTjPOiRYtUVFSkDz/8sKnLu2g0dpxra2u1fPlyhYWFacWKFbLb7TIMQ9OnT1dOTo5Gjx6tiIiI5ijdUpri3/O8efP0ww8/aMqUKYqIiNDGjRs1ffp0XXLJJbrllluauGLf5I3vQZ8/bRQWFqbKykqVl5e7tB87dqxB2j9Xf+nHw5tnlJWVudXfVzR2nOv7+uuvlZGRobS0NA0aNKgpy7S8xo7zl19+qQULFigjI0OhoaHNVablNXacjx49qhMnTig1NVV2u13S6T/099xzjyRp586dTV+0BTV2nEtLS/X2229r5syZmjBhgpKTk/W73/1Ow4cP16uvvtpcZfscb3wP+nx4iYuLk3T6Mq8zDMNQYWGh84/K+QQHBysiIsKlv3T6j487/X1FY8f5jBMnTuiRRx5RdHS0nnnmmSav0+oaO85r167VqVOnNGHCBMXExCgmJkbjxo2TJMXExGjq1KnNU7jFNHacO3ToIEmKjIx0aT/zf7Bt27ZtqlItrbHjXFRUpNra2gb3KerVq5eKioqatlgf5o3vQZ8PL+Hh4YqPj1d2drbzqpVVq1aptLRUiYmJbm0jOTlZK1ascKbO7777TuvXr9dNN93UbHVbTVOMs8Ph0MSJE1VRUaH58+fzB/4sGjvOY8eO1cqVK11+/ud//keStHLlSj322GPNWr9VNHacg4ODFRUVpV27drm0b9myRX5+furbt2+z1G01jR3nzp07S5K++OILl/YNGzYoPDy86Qv2YS39PWgzDMNoli1byOeff660tDRFR0erR48eysvL05AhQzRv3jxJ0o4dO2S329WlS5ez9j9+/LhSU1NVXV2txMREbdy4UR06dNCqVasUFBTUkh+lVWvsOM+YMUPvv/++ZsyYoauvvtrZHhQUpJ49e7bIZ7CCxo7zT23dulXjxo3Tnj17mrNsy2nsOH/44YeaNm2aJk2apOuvv167du3SvHnzNGzYMGVkZLTkR2nVGjPOhmFo+PDhOnjwoG6//XZ17txZBQUF2r59u2bMmOHx1TUXszP/va9bt05XXHGFs73VfQ82y91jLGj37t1Genq6kZqaaixYsMA4efKk873o6GjjD3/4w3n7Hz161Hj++eeNO++805g6dapx+PDh5i7Zkhozzv379zeio6Mb/KSlpbVE6ZbS2H/P9W3ZsoWb1J1DY8c5Ly/PuPvuu434+Hhj4MCBxsyZMw2Hw9HcZVtOY8a5pKTEmDZtmpGQkGDExcUZgwYNMhYsWGDU1dW1ROmWc+a/95/epK61fQ9y5AUAAFiKz895AQAA1kJ4AQAAlkJ4AQAAlkJ4AQAAlkJ4AQAAlkJ4AQAAlkJ4AQAAlkJ4AQAAlkJ4AQAAlkJ4AQAAlkJ4AQAAlvL/ARemvXa2zPf1AAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_ROC(y_score, test_y, title=\"ROC-xgboost\", filename=PICTURE_PATH + \"ROC-xgboost.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:46.874730500Z",
     "start_time": "2023-06-12T07:03:43.618607100Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "outputs": [
    {
     "data": {
      "text/plain": "(id\n 103914    1.000000\n 103915    0.000000\n 103916    1.000000\n 103917    0.333333\n 103918    0.666667\n             ...   \n 116892    1.000000\n 116893    1.000000\n 116894    1.000000\n 116895    1.000000\n 116896    0.333333\n Name: 1, Length: 12949, dtype: float64,\n 0.702834195690787)"
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#KNN模型\n",
    "from sklearn.neighbors import KNeighborsClassifier\n",
    "\n",
    "def KNeighborsClassifier_regression(train_x, train_y, test_x, test_y):\n",
    "    knn = KNeighborsClassifier(n_neighbors=3)\n",
    "    knn.fit(train_x, train_y)\n",
    "    y_score = pd.DataFrame(knn.predict_proba(test_x)).iloc[:, 1]\n",
    "    y_score.index = test_y.index\n",
    "    return y_score, accuracy_score(knn.predict(test_x), test_y)\n",
    "\n",
    "\n",
    "y_score, accuracy = KNeighborsClassifier_regression(train_x, train_y, test_x, test_y)\n",
    "y_score, accuracy"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:49.332818Z",
     "start_time": "2023-06-12T07:03:46.877722500Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_P_R(y_score, test_y, title=\"PR-KNN\", filename=PICTURE_PATH + \"PR-KNN.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:52.624468200Z",
     "start_time": "2023-06-12T07:03:49.334814300Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_ROC(y_score, test_y, title=\"ROC-KNN\", filename=PICTURE_PATH + \"ROC-KNN.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:55.856018400Z",
     "start_time": "2023-06-12T07:03:52.626444100Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "outputs": [
    {
     "data": {
      "text/plain": "(id\n 103914    1.0\n 103915    0.0\n 103916    1.0\n 103917    1.0\n 103918    1.0\n          ... \n 116892    1.0\n 116893    1.0\n 116894    1.0\n 116895    1.0\n 116896    0.0\n Name: 1, Length: 12949, dtype: float64,\n 0.9488763611089659)"
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#决策树分类器\n",
    "from sklearn.tree import DecisionTreeClassifier\n",
    "\n",
    "def DecisionTreeClassifier_regression(train_x, train_y, test_x, test_y):\n",
    "    dt = DecisionTreeClassifier()\n",
    "    dt.fit(train_x, train_y)\n",
    "    y_score = pd.DataFrame(dt.predict_proba(test_x)).iloc[:, 1]\n",
    "    y_score.index = test_y.index\n",
    "    return y_score, accuracy_score(dt.predict(test_x), test_y)\n",
    "\n",
    "\n",
    "y_score, accuracy = DecisionTreeClassifier_regression(train_x, train_y, test_x, test_y)\n",
    "y_score, accuracy"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:56.419739400Z",
     "start_time": "2023-06-12T07:03:55.858014Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi8AAAG9CAYAAADdkpaRAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABHFUlEQVR4nO3deXxU9b3/8fcsyWSD7IsCCRAlrBoBS0UUsVXjAgVFFKWrioB661JRLtZWrkXbSFWs+GuwtXi9V6yRSi0W7QVRvAjcIAoBAdkTtgQSCFkmycyc3x8hA0NYMslMDjO8no/6cL7fOd9zPpMp5O053/M9FsMwDAEAAIQIq9kFAAAA+IPwAgAAQgrhBQAAhBTCCwAACCmEFwAAEFIILwAAIKQQXgAAQEghvAAAgJBCeAFwTnv33Xf11VdftXr7b775Ro899pi2b99+yvd/+9vf6h//+Ic8Hk+AKgTQ0QgvAM5pzz77rP7617+2aluPx6NnnnlGO3bsUEpKiiTJ5XKpurpakrR9+3bNmzdPxcXFslqb/vpzu92qq6tTbW2tz76+/vprDR48WJ988kmrjv30009rwoQJrf1YANrBbnYBAM5fn3/+uebNm6dXX31VkZGRp9wmIiJCnTp1atX+/vjHP2rt2rWSpMsvv9znvQ0bNuiFF16Q2+3WG2+8oTfeeMPn/RtuuEGzZ8/2Oe7Ro0eVnJzcqmM3NjbK5XK1alsA7UN4AeCVk5Pj005ISNDVV1+tqVOnKjU1VZJ07bXXas+ePd5tUlNT1b9/fz3wwAMaMGCAX8fbuHGjPvvsM02fPl35+fmSpL1792rLli1yOByyWCzyeDwqLy/XqlWrvONiYmJaHGvx4sWaPXu2nn76aV1//fW68cYbNWXKFF1//fVyuVz68MMPtWTJEr3xxhuKjo7WnXfeqdmzZys3N1cul0sRERE++7Pbm/56jIqKkiTNnDlTHo9HFotFkhQfH68HH3zQu31ERIR3DIDg4k8aAB+XXXaZxo8fr4aGBn377bd69913tXHjRv3tb3/znh1JSUnR1KlT5Xa7tXv3br3zzjsaP3685s+fr/79+7f6WBMnTlRpaaneeecd9ejRQ1OmTNHKlSs1bdo0n+0WLVqkRYsWedv9+/fXe++9522vW7dOjzzyiK655hrdfffdkqRevXqppKREXbt2lcvl0uOPP668vDwNHTpUHo9HUVFRKikp0Q033OBzrKNHj6qkpER79+6VJO3evVsej0dHjx6V2+2W1WrVunXrFBUVpTvuuEOGYchut8vj8cjlcmnHjh1KSEhQYmKifz94AK1GeAHgo2vXrvrBD37gbQ8ePFgPPfSQPvroI40cOVJS05mPE7e58cYbNWrUKL3zzjt+hRepaa5ISUmJZs+ereuvv14333yzvv/973vPvFx55ZW666679NBDD0mS7r//ftXU1Pjs45JLLtH06dO99UlSv379vGdCvvnmG91yyy266aabJElWq1UjRozwnk060dq1a3Xfffd52w888IAyMzP1r3/9y9v38MMPy+Px6Mknn9Tnn3/uMz4vL0+/+93vfH4+AAKL8ALgjIYOHSpJKi4u9gkHJ8rJyVFKSor3bIU/7Ha7fv/73+uLL77QRRddJElyOBze910ulxwOh88lGZvN1mI/1157rUpKSlRWViar1ao777xTkrRt2zYtXrxYhYWFGjZsmKqqqiTJG4a2bdsmp9OprKwsxcXF6YorrtCXX36pBQsW6Nlnn9X777+vzMxMFRUVKSoqSv3791dpaamuuuoqjR8/3nvm5eWXX9aWLVv08ssvKzY21u+fA4DWI7wAOKPmu3IaGxtPu43T6dSRI0eUlJQkSaqoqJDb7T7t9jExMT6/4BMTE71nRU5kGIbq6uq8805OrulE8+fP1xtvvKHIyMgWc08aGhrkdDp11113tRjndrvldDo1b948DRo0SBEREYqIiNA333wjqSkoxcbG6v3339eKFStUWFiozZs3a+LEiUpLS1NDQ4MiIyPlcDgUERGh9PT0035uAIFBeAFwRps2bZIkZWVlefs8Ho8qKiokSeXl5XrllVfU2NioG2+8UZI0duxYn0m9J3vwwQe9Zz6a9/fll19q8ODBOnr0qCIjIxUZGamamhoZhtEivEhNoaOhoUHR0dGSpEcffVSPPvroKY/31ltvqaCgQJ999lmrPrNhGFq+fLmkpnVhnnzyST355JO65ZZb9NBDD6mhoUGDBg3SE088IZvNppkzZ7ZqvwACg/ACwEdDQ4MqKirU2NiorVu36vnnn1dcXJxuueUW7zalpaW64oorvO3Y2FhNnTpV1157rSQpPz9f9fX1pz1Gt27dfNpLly7VQw89pD//+c/6yU9+0mL7Z555Rs8884xPX9++fdWvXz8tWLDA21dcXKzbbrvttMc9+W4qSRoyZIjefPNNn74vv/xSZWVlkqS6ujpNnz5d8+fP11NPPaUHHnhA/fv3V3Jysvr27av8/Hz927/922mPCSDwCC8AfHz00Uf66KOPvO309HS9+uqrPuudpKWl6be//a1qamr085//XHl5ebrnnnu87w8aNKjVxzMMQ6+99pp69uypyy+/XB999JH30s3777+vWbNmyWKxaN68eerZs6d3XENDQ4vLR81nYV566SVddtll3v6HH35YpaWlKiws9Nn+ueeeO2XIevvtt5WSkqKDBw/q8ccf1z333KM333xTd955pxwOh+rr69XY2Kjx48fr9ddf15///OdWf14A7Ud4AeDjiiuu0MSJE2WxWBQfH6+cnJwWE2SjoqK8E3nz8vL0wQcf6JFHHjnl3Ttn88EHH6i4uFhz5syR3W5X9+7dve8tXLhQ/fr1U2VlpV5//XXNnTv3jPtqXoMlKSlJGRkZkqRly5Zp7dq1cjgccjqdPvtvbGxsMbl28+bN+uc//6mf/vSnmjt3rpKSkvT000+rZ8+eWrBggTwej0pKSvT6669r8uTJGjt2rN5++23l5eX5/dkBtA2PBwDgIyUlRUOHDtUVV1yhvn37nvLOnhPde++9amho0FtvveX3sY4cOaLnn39el112mb73ve/5vPf2229r69atevDBBzVx4kR99tlnevvtt8+4v4aGBp/2rl279MQTTygtLU319fWaPHmyysrKtGnTJg0ZMkRLlixRZmamz5gPP/xQF1xwgc8E4tGjR6tnz5569dVXNX78eN1zzz167bXXVFJSorvuuksLFixoscgdgOAhvABol759+2ro0KGaP39+i+cDnc306dN16NAhn5VqpaZJws8//7yuueYaXXvttbrtttvUr18/zZgxQ//4xz9Ou7/k5GRNnTpVmZmZ2rFjh370ox/poosu0j333KPU1FT17NlTt956qw4cOKC7775bM2bM0JQpU3z2MXnyZP36179uccfSjBkzVFdXp8mTJ+vee+9Vp06d9Nxzzyk1NVUXXnihX58bQPsQXgC027333qvDhw/7rHp7Ni6XS3369NFll12mYcOGefu//vpr/fjHP1Z8fLyee+45SVJkZKTmzJmj5ORkPfbYY3riiSd06NChFvtMTU3VPffco40bN2rcuHFKT0/X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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_P_R(y_score, test_y, title=\"PR-决策树\", filename=PICTURE_PATH + \"PR-决策树.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:03:59.817964500Z",
     "start_time": "2023-06-12T07:03:56.420728400Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi8AAAG9CAYAAADdkpaRAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABEFUlEQVR4nO3deXhU9d3//9fMJJkkExISEhIIhCXK5pZiK2r5ibgV9YYCIm5o61KBapWqqFiLlWrsbcQFFe8GW79a27pQb7ncqAtqrQrcLFYWAWUPSMi+T2Y7vz8iJzOAkJnMwiTPx3V59czJ+Uzec0Tm1c/5LBbDMAwBAADECWusCwAAAAgG4QUAAMQVwgsAAIgrhBcAABBXCC8AACCuEF4AAEBcIbwAAIC4QngBAABxhfACIK6sWLFCb7/9trxeb4euNwxDs2fP1ptvvnnYn3/44YdasGCB9u/fH84yAUQQ4QVAXHnnnXc0e/ZsWa0d++vrpZde0tKlS5WVlSVJ8vl8cjqdcrlckqTS0lK9+eabSkpKktQWdlpbW9XQ0HDIe02ePFm33357h37vypUr9cMf/lBff/11h64H0HEJsS4AAA6oq6vTr371K91111064YQTDntNYmKiHA6HLBbLUd9v27Ztevjhh+VyuXTttdcG/OyBBx5QZmam1qxZI0kaNWrUIe3XrFkjh8NhvvZ4POrRo0eHP09DQ4MSExM7fD2AjiG8AN3UihUrdM0115ivExMTlZ+fr/PPP1833nij0tPTJUm7du3SQw89pOXLl8tqtWr06NG65557lJubG/B+y5cv16OPPqpNmzYpOztb11xzjX7+858HVVNlZaW++uorTZ8+Xa+++qr69OkjSXr//feVkpIiq9Wq/fv3yzAMrVixIqDtiSeeGBA0KisrNXPmTI0YMUKPP/64nnzySX311VdasGCB3G63DMPQtGnTNHXqVN1yyy2aOXOm8vPzdc8998jn88nlcik1NTXgdyQkJCglJUWS9Pbbb2v16tUBPUBXXXWVBg4caN5PSbLZbEHdAwBHR3gBurmf/OQnOvfcc9XU1KQ1a9bo2Wef1fLly/XKK6+otrZWV155pZqbm3XDDTfI5XLpz3/+szZt2qQlS5YoOTlZUltwuf766zVixAjNmTNHGzZs0EMPPaSWlhbNnDmzw7UUFhbq6aef1nXXXacZM2bo73//u1JTU3XTTTcdcq1/8JKkN998U8cff7yktkdD119/vaqqqvTss88qJydHJ510kt544w3l5ubKarXqhRdeUFNTk2bNmqVevXppxIgRWr169SGhTJI2bdoki8Uil8ul2tparV+/XlVVVaqrq1NCQoJqa2v14Ycf6uKLL9a+ffuUmJgop9MpSaqoqJDX6zVDDYDOI7wA3dywYcP005/+VJJ05ZVXKicnR3/+85/1xRdf6IMPPlBFRYWee+45nXnmmZKkgoIC3XPPPVq8eLGmTZsmwzB0//33Ky8vTy+88ILZM9HY2KjS0lJdc801AT0iR3Paaadp3rx5mjNnjp5++mnNnj1by5cvV3Jysmw2mx5++GG9++67WrZsmaS2MTB33HFHwOMZq9Wqhx56SOXl5erfv78kaciQIerfv79qa2tlt9tltVr19NNPq1evXpKkk046yeyROfiR1PXXX6/KykpJ0tdff63XXntNf/3rX3X11VdLkj7++GN9+OGH2rJliy677LKAtldccYXOOOMM/b//9/86fA8AHBkDdgEEOOOMMyRJe/fu1Ycffqg+ffqYwUWSxo8fr8TERH300UeSpHXr1mnbtm2aMmWKGVwkaezYsWpubta6deuCrmHy5Ml66KGH9Ktf/UqSlJmZqZSUFCUlJcnn88lutyshIUEJCQnmY5uDH88MHjxYvXr10qZNm7R161alpaXpscceU01Njb7++mv9/ve/165du7R161Zt3bpVI0eO1A033KBt27Zp06ZN2r17t/le//znP7VixQpZLBZde+21WrNmjQYOHKjXX39dklRWVqY+ffrooosu0kcffaRPP/1Uzz//vCRp8eLFKikpCfoeAPh+9LwACHBgynBGRoZ27typ008/PeDnSUlJys/P19atWyVJX3zxhSTp5JNPDrhu6NChuuiii5ScnKympiY1Nzd/7++02WzmbKADJk+efNhrm5ubzcdV/g7uLdm7d6+uuOIKJSUlmTOJDvbwww8rIeHQvwadTqcmTJig3//+95KktLQ0rVq1yuyVcTgc2rhxo+bMmaP09HStX79ew4YNU1pamvn7KioqJLUFr5ycnO/97ACCR3gBujmn06nq6mr5fD5t2LBBCxYsUG5urgYPHiyPx6OMjIxD2vTs2VObN2+WJO3Zs0eS1Lt374Brhg0bpscee0yS9OSTT+qpp5763hry8/PNx0AHrFq1Sj/4wQ/U2toqSbLb7bLZbGpqajpseDEMQ06nU4mJibLZbBo8eLA2bNhw2N/X1NSkkSNH6sknnwzoVTqSjz/+WJK0du1aPf3007rpppt09dVX6/7775fNZtMVV1yhjz76SHPnztXbb7/dofcEEBrCC9DN/fGPf9Qf//hH8/Vxxx2nRx55xHwcc7ipvgkJCWaoaGpqkqTDBooDJk6cqFNPPfV7f2632wNeu1wu3XrrrTr77LPV2tqqN95445A2Q4cODXh93nnnSZLeeOMNDRkyxDw/fvx4bdmy5bC/9+Dp0wd8+OGH6tu3r/naMAy9++67ktp6eJ555hmde+65mjVrlpYuXao9e/bo7LPPVkZGhurr6/X3v/9do0eP/t7PC6BzCC9ANzd58mSNHz9e77//vv7617/q/vvv1/Dhw1VVVSVJcrvdh7Rxu91m4DgQcjweT8A1TU1N2rVrl/Lz89W/f39z4GxHvPLKK6qsrNSUKVPUr18/3XrrrUpKSlJjY6MmTpwol8ulK6+8Ur/85S/NNl6vVy6XS3l5eQHvlZKSonHjxmnOnDnmuX/+858qLi7Wo48+GhCq1q5dq1mzZh0yRfrzzz/Xzp07lZWVpdNOO019+vTRPffco1deeUVnnHGGXn/9ddXX1+v444/X5Zdfrueff16nnXZahz8vgOAwYBfo5vr3768zzzxTt9xyi1JTU/XnP/9ZUtuYl4SEBNXU1BzSpra21hyjkpmZaZ7zt2bNGk2cOFHLly8Pqp76+no9/fTTOv/88/WDH/xAOTk56t+/v3Jzc7Vs2TK53W6de+65+sc//iGXy6WcnBzl5OQoLy9PBQUFh4xvsVgsSklJUV5envLy8pSWlqa//OUvkqQdO3aY5/Py8szxL/7hxTAMPfHEEzr99NPNdWduvfVWXXLJJaqurta7776r9PR0zZ071wxVlZWV5oBmAOFHeAEgqW0cyyWXXKJly5Zp+/btSkhI0ODBg82BuQc4nU7t3btXxx13nKS2sS1S21oo/r799ltJOuy6KUfy8MMPq7a2Vr/+9a8DzpeXl+vZZ5/V+eefrwceeEA2m0133323ucz/9/H/udfr1V133WU+8lq4cKHeeecdGYahn/3sZ7r11lvVp0+fgAC0bds2rVu3TtOnTzfPDRgwQFdddZUWLlwoh8OhF154QTt37tRzzz2ngoICvfzyy7rggguC+twAOo7wAsB07bXXymaz6bnnnpPUNt25vLxc//rXv8xr3njjDbndbp199tmSpLPOOksOh0OvvvpqwGaJS5cuVY8ePcxw0xHvv/++Xn31VV100UUqLCw0z7vdbt1xxx1yu92aPXu2srKydMstt2jlypW67bbbzDByOFdffbUuuugiud1u3XXXXfr000/16KOPSmp7ZDZ79myVlJTo6quv1o033mj2yhxQWFioBQsWmFPID/j000/18ssv6+abb9bw4cN12WWX6ZlnnlF5eblOOeWUDn9mAMEjvAAw5efna9y4cXr99ddVXV2tn//85+rdu7dmzZqlp556So899pjuv/9+DRo0SJdccokkyeFw6J577tGGDRt03XXX6aWXXtLMmTP16aef6sYbbzxkMO6RpKenq6CgQDNmzDDPNTc3a8aMGVq5cqXuv/9+FRQUSGoLWhMmTNB7772nn/70p1q5cuVh33Py5MkaOnSorr32Wr3//vv6n//5H40YMUKSdOGFF+q///u/9be//U2PPvqoCgsLDxkzI7UPBj5g48aNuu2223TKKafo0ksvlSTdcMMN+tnPfqbs7OwOf14AoSG8AAjwi1/8Qq2trXrxxReVlZWlv/3tbzr99NP1pz/9SS+++KLOO+88Pf/88wGhZMqUKXrqqadUX1+vBx54QFu2bNG9996rG2+8Majffdppp+mNN94wl/n/8ssvdfnll+vTTz/Vb3/7W40fPz7g+oceekjXX3+9tm/frquvvloXXHBBQIhxuVz6y1/+oosvvlg7duzQCy+8oNNPP12GYUhqG89y8cUX6x//+IdSUlJ0xx136JxzztG8efP05ptvqqWlJeD3+Xw+GYahPXv2KCMjQ4888oi5OF6fPn3061//2nzt8/mC+uwAOs5iHPivGACOIdu3bzd7d+6///5Dgou/zz//XE8//bTq6ur0+uuvy2az6f3339fvfvc7VVRUaMyYMSouLjZ7RWprazVq1CiVlpZqzJgxktqCzP/+7//q6aefVllZmf7rv/5L8+fPD/g9F110kc466yzdfffd8ng8h13gTpJefvllff7553rnnXf0ySefHLIGDoDOYao0gGPSoEGDtHDhQnOq9ZGcccYZOuOMM9TQ0GD2fJx11lk688wzdeaZZ2rixIkB1x8YI3Ng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u/WHP/xBd999twYOHBjGCruGcNznhoYGPfjgg+rZs6c++OADzZkzRx988EG4S41r4bjPZ5xxhl588UWtX79ejY2NevbZZ7V79+6AQATpuuuu01VXXRVS21h8DyZE5F3jiNPplN1uV0pKSsB5h8OhmpqaDrWXpJ49ewacT0tL61D77qKz9/lwHn30UQ0YMEAXXHBBOErsEsJxn30+n+68806NGjVKl19+uVasWBGJUuNaOO7zM888o8rKSqWlpWnfvn3atWuXXnvtNf3iF7/QHXfcEYmy40447vOdd96p1atX65JLLjHPlZSU6IQTTghrrfHOag29LyMW34PdPrzY7Xazm8ufxWIx/4Ucrb2kQ96jo+27i87e54O9+uqr+uSTT1RaWqqEhG7/x9gUjvv87LPPateuXXrjjTfCXV6X0dn77PV69eqrryo7O1uvvfaacnNzZRiGfvOb32jRokWaOnWqCgoKIlF6XAnHn+cnnnhCe/fu1e23366CggJ9/PHH+s1vfqP09HSdffbZYa64e4rF92C3f2yUnZ2t5uZmNTY2Bpyvra09JO1/X3upvXvzgJqamg617y46e5/9ff311youLta0adM0ZsyYcJYZ9zp7nzdt2qQnn3xSxcXFysrKilSZca+z97mqqkr19fWaNGmScnNzJbX9RX/FFVdIktavXx/+ouNQZ+9zdXW1nn/+ec2bN0833nijxo0bp4ceekgTJkzQww8/HKmyu51YfA92+/AyYsQISW3TvA4wDEMbNmww/1I5krS0NBUUFAS0l9r+8ulI++6is/f5gPr6et18880aMmSI7rrrrrDXGe86e5/fe+89uVwu3XjjjRo6dKiGDh2qa665RpI0dOhQ3X333ZEpPM509j6npqZKkgYMGBBw/sD/g01KSgpXqXGts/d5165d8nq9h6xTNHz4cO3atSu8xXZjsfge7PbhJS8vT0VFRSotLTVnrSxZskTV1dUaPXp0h95j3Lhxeu2118zUuXPnTi1btkw//vGPI1Z3vAnHfXY6nZo+fbqampq0YMEC/oI/jM7e58svv1yvv/56wD8PPPCAJOn111/XLbfcEtH640Vn73NaWpoKCwu1cePGgPPLly+X1WrVSSedFJG6401n73NmZqYk6T//+U/A+Q8//FB5eXnhL7gbi/b3oMUwDCMi7xxHvvjiC02bNk1DhgzRoEGDtHTpUp133nl64oknJEnr1q1Tbm6uevfufdj2dXV1mjRpktxut0aPHq2PP/5YqampWrJkiRwORzQ/yjGts/d57ty5evnllzV37lydfPLJ5nmHw6HBgwdH5TPEg87e54OtWLFC11xzjTZv3hzJsuNOZ+/zG2+8oTlz5mjGjBk67bTTtHHjRj3xxBO68MILVVxcHM2PckzrzH02DEMTJkxQWVmZLrroImVmZmrVqlVau3at5s6dG/Lsmq7swH/vH3zwgfr162eeP+a+ByOyekwc+uqrr4yZM2cakyZNMp588kmjtbXV/NmQIUOMp59++ojtq6qqjN/+9rfGT3/6U+Puu+829u/fH+mS41Jn7vPIkSONIUOGHPLPtGnTolF6XOnsn2d/y5cvZ5G679HZ+7x06VLj0ksvNYqKiowzzzzTmDdvnuF0OiNddtzpzH2uqKgw5syZY4waNcoYMWKEMWbMGOPJJ580fD5fNEqPOwf+ez94kbpj7XuQnhcAABBXuv2YFwAAEF8ILwAAIK4QXgAAQFwhvAAAgLhCeAEAAHGF8AIAAOIK4QUAAMQVwgsAAIgrhBcAABBXCC8AACCuEF4AAEBc+f8BFtFmnloYUw8AAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "make_ROC(y_score, test_y, title=\"ROC-决策树\", filename=PICTURE_PATH + \"ROC-决策树.png\")"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2023-06-12T07:04:03.075900400Z",
     "start_time": "2023-06-12T07:03:59.817964500Z"
    }
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
